// 多继承 二义性
/*
base1
base1
base2
child
*/
#include <iostream>

using namespace std;

class Base1
{
public:
    void fun01(void)
    {
        cout << "base1" << endl;
    }
    void fun02(void)
    {
        cout << "base1" << endl;
    }
};

class Base2
{
public:
    void fun01(void)
    {
        cout << "base2" << endl;
    }
};

class Child:public Base1, public Base2
{
public:
    void fun04(void)
    {
        cout << "child" << endl;
    }
};

int main(int argc, char **argv)
{   
    Child c;

    c.fun02();
    c.Base1::fun01();
    c.Base2::fun01();
    c.fun04();


    return 0;
}